package com.taotao.jedis;
  
import org.springframework.beans.factory.annotation.Autowired;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;  
  
public class JedisClientPool implements JedisClient {  
    //单例连接池
    @Autowired  
    private JedisPool jedisPool;  
  
    @Override  
    public String set(String key, String value) {  
        Jedis jedis = jedisPool.getResource();  
        String result = jedis.set(key, value);  
        jedis.close();  
        return result;  
    }  
  
    @Override  
    public String get(String key) {  
        Jedis jedis = jedisPool.getResource();  
        String result = jedis.get(key);  
        jedis.close();  
        return result;  
    }  
  
    @Override  
    public Boolean exists(String key) {  
        Jedis jedis = jedisPool.getResource();  
        Boolean result = jedis.exists(key);  
        jedis.close();  
        return result;  
    }  
  
    @Override  
    public Long expire(String key, int seconds) {  
        Jedis jedis = jedisPool.getResource();  
        Long result = jedis.expire(key, seconds);  
        jedis.close();  
        return result;  
    }  
  
    @Override  
    public Long ttl(String key) {  
        Jedis jedis = jedisPool.getResource();  
        Long result = jedis.ttl(key);  
        jedis.close();  
        return result;  
    }  
  
    @Override  
    public Long incr(String key) {  
        Jedis jedis = jedisPool.getResource();  
        Long result = jedis.incr(key);  
        jedis.close();  
        return result;  
    }  
  
    @Override  
    public Long hset(String key, String field, String value) {  
        Jedis jedis = jedisPool.getResource();  
        Long result = jedis.hset(key, field, value);  
        jedis.close();  
        return result;  
    }  
  
    @Override  
    public String hget(String key, String field) {  
        Jedis jedis = jedisPool.getResource();  
        String result = jedis.hget(key, field);  
        jedis.close();  
        return result;  
    }  
  
    @Override  
    public Long hdel(String key, String... field) {  
        Jedis jedis = jedisPool.getResource();  
        Long result = jedis.hdel(key, field);  
        jedis.close();  
        return result;  
    }  
  
}  